package main

import "fmt"

// 函数
func sumTowNum(a int, b int) int {
	return a + b
}

/*
  1、参数问题
*/
// 参数类型一致 简写
func sumTowNum2(a, b, c int) int {
	return a + b + c
}

// 参数数量不固定  类似于 js中的 ...args 接受参数成数组了
func sumTowNum3(x ...int) {
	fmt.Println(x) // [1 2 3 4]
	for _, v := range x {
		fmt.Println(v) // 1 2 3 4
	}
}

// x 接受第一个参数 ， y接受其余参数
func sumTowNum4(x int, y ...int) {
	fmt.Println("x=", x, "y=", y) // x= 1 y= [11 22 33 44]
}

func main() {
	fmt.Println(sumTowNum(1, 2))     //3
	fmt.Println(sumTowNum2(1, 2, 3)) //6
	sumTowNum3(1, 2, 3, 4)
	sumTowNum4(1, 11, 22, 33, 44)
}
